Extension: Rooster Playlist Importer - Import a Youtube playlist with one click

ROOSTER WEB EXTENSIONS CATALOGUE

ROOSTER PLAYLIST IMPORTER FOR LINGQ PREMIUM
Browser extension to import Youtube playlists as a LingQ course


BUY YOUTUBE PLAYLIST IMPORTER PREMIUM


LATEST PATCH

1.40

  • Added Course ID Input field or select from dropdown. Can leave blank to create a new course automatically.
Recent Patches

1.40

  • Added Course ID Input field or select from dropdown. Can leave blank to create a new course automatically.

1.39

  • Bug fix for multi transcribe causing an error following 1.38 update

1.38

  • Imported videos now include their original timestamps unless combined captions is selected
  • Added close buttons to the menus

1.37

  • Bug fix for assigning of API Key / Language in some cases

1.36

  • Changed API Key & language inputs to dropdowns
  • Bug fix for menu auto closing on first open
  • Improved styles of menus
  • Added icons to individual extension

for 1.29
→ You can now import any Youtube Video that has subtitles in any language and it will use the auto generated Youtube translated subs to form the lesson. This will occur if native language subtitles are not available for the video.

Kings and Generals English Civil War translated to Finnish

HOW TO MAKE OR GET YOUTUBE PLAYLIST URLS
COURSE PICTURES

VIDEO GUIDES

VIDEO GUIDE WITH ROOSTER | VIDEO INPUT | VIDEO OUTPUT

EXAMPLE IMPORTS

EXAMPLE IMPORTS

COOL PICTURES

→ Auto generated Subtitles that look really good


→ Opt out of Auto generated subtitles if you just want videos with real ones
image
→ Creator provided subtitles

→ Whisper transcribed playlist

FEATURES

→ Imports Youtube Playlists as a course and their videos as lessons.
→ Combine subtitle phrases into sentences.
→ Multiple subtitle options (max length, where to split sentences…)
→ Upload any amount of videos
→ Import and Whisper transcribe your playlist (Librarian only)

5 Likes

Just a quick “Wooohooo!!” for Spotify playlists, too!!! I make playlists for Korean, and this would help so much!

Rooting for your hard work! :muscle:

I’ll edit this reply if I think of any additional ideas!

P.S. Quickish Question: Just thinking about the playlist-to-LingQ-course feature, would there potentially be a way in the future to add lessons to courses (through this feature) or specify specific songs/videos (e.g., popup with a multi-select check box or something to select videos from the playlist) within a playlist if users update their Spotify playlist/Youtube playlist—if it’s an ongoing list?

Edit 2: Found this post on individual “import” of Transcripts for Spotify (thanks for you great reply to that one @roosterburton!).

So, users can import those new additions through the LingQ importer if they don’t have too many, but if they have a bit more, it might be an idea to consider later down the road!

3 Likes

hey @jpp025

Good idea. I’ll add this to the notes.

Another good idea, I’m also thinking to have an option to include auto generated transcripts etc

Yes you can still do manual single imports through LingQ importer, if they add more content later…!

3 Likes

This looks very interesting, can you explain a bit more how this works under the hood?

  • I believe the official LingQ extension just sends the YouTube URL to the LingQ server, which does all the extraction using yt-dl
  • is this how you do it or do you extract the audio and subtitles in the extension and upload the results to LingQ?
  • what is the advantage of using an YT API key?
  • for my personal use I’m quite happy with yt-dlp which supports all sorts of sites including Google podcasts. Obviously uploading requires another script or manual work.
    Thanks for your work.
2 Likes

I had to write a fair bit of custom stuff for this, which is why I am hiding the real script.
Basically. I have only put the API stuff as a limitation so people try the premium version.
The API requests data like, Playlist information, Video title, description. etc…

The real way to get data without sucking up to Google is to GET request the Youtube video and sift through all the garbage that they put in there that obscures the prized information. This is way more manual process and subject to break at any time but you don’t rely on any external library or give Google any money.

I downloaded and looked at the LingQ importer. It’s actually pretty simple scraping of the active tab of your browser.
Not sure what happens on the LingQ server during the import. Can only see the public code.

2 Likes

ROOSTER PLAYLIST IMPORTER PREMIUM PATCH 1.26

Patch Notes

for 1.14
→ added settings to long phrase import

for 1.15
→ added whisper transcribe (Librarians only)
(This will attempt to transcribe if… There are no native subs available and you have not checked auto generated subs)

for 1.16
→ Now transcribes individually… A lot slower but doesnt break.

for 1.17
→ Added progress box to the display, disabled input button unil job done

for 1.18
→ Now skips unavailable videos instead of crashing…
→ Now retries if transcription is poor quality

for 1.19
→ Now gives up transcribing after 30 mins and goes to next video

for 1.20
→ Waits longer for audio

for 1.21
→ Deletes the dummy audio lessons for transcribing at the end (LingQ was recreating deleted lessons (after full import, i assume))

for 1.22
→ server sometimes sends success with no JSON, we check for this and retry…

for 1.23
→ server sometimes 500, 501, 502 errors, we now retry on that too…

for 1.24
→ Was crashing if transcribe took too long. now properly continues…
→ Increased wait audio time again…

for 1.25
→ now waits 3 hours for audio instead of 30 mins (lol server)

for 1.26
→ Now adds external URL to transcribed videos

2 Likes

ROOSTER PLAYLIST IMPORTER PREMIUM PATCH 1.27 - 1.31

for 1.31
→ Fixed bug from 1.29 which only allowed Finnish imports

for 1.30
→ Fixed bug which prevented trancribing if video had possible generated subtitles

for 1.29
→ You can now import any Youtube Video that has subtitles in any language and it will use the auto generated Youtube translated subs to form the lesson. This will occur if native language subtitles are not available for the video.

Kings and Generals English Civil War translated to Finnish

for 1.28
→ Added basic progress menu
→ Added video errors display log

1.27
→ Added Korean Endings support for combined phrases. (If these characters are at end of subtitle phrase it line breaks. You can add/remove from this list in the UI as required.)
→ 다,요,죠,세요,나,네,네요,든지,으세요,이세요,ㄹ까요,을까요,는데요,은데요,자,는다,은다,라,로,냐,니,너라,。

image

2 Likes

What happens if a playlist has more than 30 videos?

1 Like

@isle9

That restriction was removed at some point, It should just import the full list

3 Likes

For Youtube Playlist Importer Free

→ Made a temporary fix of removing videoURL and originalRUL from lesson import to workaround current server error while importing to LingQ.
→ No change to premium script will just wait until the server error is cleared up.

2 Likes


For the Youtube tools, I can’t seem to get the Login to LingQ button to ever change to anything else, regardless of whether I’m logged in or not. (See image.) This means the add course and transcription features are not really accessible to me. I’m in Chrome.

1 Like

The Youtube Tools (Premium) addon is Firefox only right now. There is a bit of work required to bring up to Chrome’s stricter standards.

1 Like

Rooster Playlist Importer Premium 1.32

With the Youtube import bug persisting i’ve decided to make changes to the premium version of the script.

→ Restructured the import, now Imports basic details and repatches Youtube information after creation.
→ Imports will function like before, with Youtube player integration in the LingQ lesson.

For Librarians: → This change means we are unable to import the mp3 and I’ve had to remove the transcribe ability from this addon until the issue has been fixed by LingQ.

1 Like

The Youtube importing Issue has been resolved. Will be rolling back changes to the playlist importers.

Edit: Changes have been rolled back on Playlist Importer Free/Premium, Master LingQ Free and Rooster Transcribe.

2 Likes

I would like to second the request to add lesson to existing courses, its the one thing I would need for this extension to be perfect.

2 Likes

Sounds good, have just added that

2 Likes